System and method of capacity management for provisioning and managing network access and connectivity

ABSTRACT

A system and method is provided for capacity management of network connectivity between endpoints coupled to one another via a circuit. An inventory of network elements may be maintained in a database. A circuit designer may be presented with network elements that may be selected when designing the circuit between endpoints.

TECHNICAL FIELD

The disclosure relates generally to the field of carrier networkconnectivity management and more particularly to capacity management ofnetwork elements and facilities providing carrier-neutral network accessconnectivity.

BACKGROUND

A core network access provisioning platform (also referred to herein as“Core180 platform”) provides secure and dedicated long haul transportover the platform's private backbone network. The Core180 platform actsas a neutral gateway and virtual point of presence into significantlymore providers than those that would be otherwise available to acustomer. The Core180 platform intersects hundreds of carrier networksand enables additional control including, but not limited to, location,speed, and value. The Core180 platform can deliver local connectivity toany endpoint in North America.

The Core180 platform may provide an ability to design a circuit thatcouples at least one endpoint to at least one other endpoint based oncustomer requests for network connectivity between the endpoints. Forexample, a computer server in Rhode Island may be coupled to a computerserver in Florida using a circuit designed/provided by the Core180platform. The circuit may include one or more segments coupled to oneanother to form the circuit. In order to provide the customer with acircuit that has the best price/performance value, segments from manysuppliers may be selected and integrated at unique integration points inthe platform's backbone network in addition to segments provided by theCore180 platform itself. In other words, selection of segments from thebackbone network itself and/or one or more suppliers may be based onwhich set of segments for the circuit provide the best price/performancevalue for the customer request. When the circuit includes a segment fromone or more suppliers other than the backbone network, the segment fromthe one or more suppliers may be coupled to the backbone network at aninterconnect point. In other words, the interconnect point may couplethe backbone network with an outside or third party vendor of networkservices. Thus, the circuit may include all or a portion of the backbonenetwork provided by the Core180 platform and/or all or a portion ofoutside vendor networks.

Each segment may terminate at one or more equipment (which may be partof Core180 platform, i.e., the private backbone network). Each equipmentmay include channels/ports being used to couple the segment. Withoutinformation related to network capacity, a user may be unable to designan appropriate circuit. For example, without a real-time inventory ofavailable equipment, the user may attempt to add a segment that includesequipment that is unavailable. Equipment may be unavailable because, forexample, it is already in use by another circuit, is undergoingmaintenance or other down-time, and/or is otherwise not available foruse. Additionally, without an inventory of channels of existing circuitsthat may be available for use, optimal use of circuits/facilities may bedifficult to achieve.

Furthermore, the user may manually enter the ports/channel/equipmentbeing used in the designed circuit without any constraints, which maypresent problems such as, among others, data entry errors, fictitiousnames (i.e., made-up names), and/or other data integrity errors.

SUMMARY

In some implementations of the invention, the disclosure relates to asystem and method for capacity management of network connectivitybetween endpoints coupled to one another via a circuit. In someimplementations of the invention, network capacity information may bemaintained in a database. In some implementations of the invention, acircuit designer may be presented with network elements that may beselected when designing a circuit between endpoints. In someimplementations of the invention, when a network element is selected,the capacity information may be updated to indicate the use of thenetwork element so that the inventory of what is available, among otherinformation, may be maintained.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated into and constitute apart of this specification, illustrate one or more examples ofimplementations of the invention and, together with the description,serve to explain various principles and aspects of the invention.

FIG. 1 illustrates an exemplary network management system, according tovarious aspects of the invention.

FIG. 2 illustrates an exemplary GUI screen for designing a circuit byselection of one or more channels, according to various aspects of theinvention.

FIG. 3 illustrates an exemplary GUI screen for designing a circuit byselection of one or more equipment, according to various aspects of theinvention.

FIG. 4 illustrates an exemplary circuit layout diagram, according tovarious aspects of the invention.

FIG. 5 illustrates a flowchart depicting example operations performed bya network management system, according to various aspects of theinvention.

Reference will now be made in detail to various implementations of theinvention as illustrated in the accompanying drawings. The samereference indicators will be used throughout the drawings and thefollowing description to refer to the same or like items.

DESCRIPTION OF EXEMPLARY IMPLEMENTATIONS

FIG. 1 is an exemplary illustration of a network management system 100,according to an aspect of the invention. Network management system 100may include, among other things, a network management server 110 that isconfigured to manage network connectivity between endpoints such as, forexample, a first endpoint and a second endpoint. Network managementserver 110 may manage network circuit design from the first endpoint tothe second endpoint based on customer requests for network connectivitybetween the endpoints. A designed circuit may connect the first endpointto the second endpoint, and may include one or more segments that arecoupled to one another to form the designed circuit. As would beappreciated, the first and second endpoints described herein arenon-limiting examples only; any type and number of endpoints may beutilized based on customer requests.

Network management server 110 may include a processor 116, circuitryand/or other hardware configured to execute computer-readableinstructions. According to one aspect of the invention, networkmanagement system 100 may include one or more tangible computer-readablestorage media configured to store one or more software modules, whereinthe software modules include computer-readable instructions that whenexecuted by the processor cause the processor to perform the functionsdescribed herein. According to one implementation, network managementserver 110 may comprise computer hardware programmed with a computerapplication having one or more software modules that enable the variousfeatures and functions of the invention. Non-limiting examples of thesoftware modules in the application may include one or more of a circuitdesign manager 112, a database manager 114, and/or other modules forperforming the features and functions described herein.

Users may interact with network management server 110 via one or moreclient devices 120 a, 120 b, . . . , 120 n. Client devices 120 a, 120 b,. . . , 120 n may each comprise or otherwise access a user interface,such as an Application Programming Interface (API) or a Graphical UserInterface (GUI). In some implementations of the invention, the user mayinclude a computer program, a person, or other entity. Through the userinterface, the user may perform various operations that may facilitateinteraction with network management server 110. For example, the usermay, via the user interface, provide customer requests for networkconnectivity (i.e., establishing a network connection betweenendpoints), design one or more circuits, view/update/manage circuits,request one or more reports, and/or perform other operations. Clientdevices 120 a, 120 b, . . . , 120 n may include a processor (nototherwise illustrated in FIG. 1), circuitry, and/or other hardwareoperable to execute computer-readable instructions.

According to one implementation, circuit design manager 112 may managecircuit design between endpoints. In some implementations of theinvention, circuit design manager 112 may receive a customer request toestablish a network connection between a first endpoint and a secondendpoint. In other words, a request associated with designing a circuitbetween endpoints may be received. The customer request mayinclude/define one or more parameters for the network connection. Insome implementations of the invention, the one or more parameters mayinclude, for example, network speed, bandwidth, price, and/or otherparameters.

In some implementations of the invention, a circuit designer may designa circuit by selecting one or more segments (from the private backbonenetwork, from external network carriers/providers, or both) based on thecustomer request (i.e., one or more parameters of the customer request).In this manner, the circuit designer may that may provide a bestprice/performance value for the customer based on the one or moreparameters of the customer request. In some implementations of theinvention, the circuit designer is a person such as an a technician, acomputing device configured to design a circuit based on the one or moreparameters, and/or other user or entity that may design the circuit. Insome implementations, circuit design manager 112 may provide the circuitdesigner with various segments from which to specify (i.e., select) todesign the circuit via the user interface. In some implementations ofthe invention, circuit design manager 112 may generate a GUI to bepresented to the circuit designer.

In some implementations of the invention, a segment may terminate at oneor more network elements. Thus, in some implementations of theinvention, a segment may be associated with or otherwise be defined bythe one or more network elements. In some implementations of theinvention, the one or more network elements may include but not belimited to, one or more equipment associated with the private backbonenetwork and/or external network providers; a rack, a shelf, or a chassisassociated with the equipment; a slot, a card, and/or a panel; a channelor a port associated with the equipment, and/or other elements that maybe used to couple a first endpoint with a second endpoint.

In some implementations of the invention, each chassis may have a slotfor which a card may be inserted. Cards may have ports with copperwiring. Each card may be prewired to a particular panel (for example,card A may be prewired to panel A). Circuits may be wired to panels.Each equipment may include channels/ports being used to couple thesegment. In one implementation, circuits may be designed by choosingequipment and/or choosing channels/ports associated with the equipment.

In some implementations of the invention, a segment may include one ormore first network elements at one end of the segment and one or moresecond network elements at the other end of the segment. In someimplementations of the invention, the one or more network elements maycouple a first segment with a second segment. In some implementations ofthe invention, the one or more network elements may be part of theprivate backbone network, part of one or more external networkproviders, and/or part of another network. In these implementations,when a segment is selected, one or more network elements associated withor otherwise defining at least one end of the segment may be selected.In other words, specification/selection of a segment may includespecification/selection of one or more network elements associated withthe segment.

In some implementations of the invention, network management system 100may store, track, or otherwise maintain capacity information that mayindicate an inventory, availability, and/or other information related tothe one or more network elements.

Because the one or more network elements may include various equipment,components of equipment, and/or other elements, a real-time model ofnetwork element capacity at multiple (even fine-grained) levels ofnetwork elements may be generated. In this manner, efficient coupling ofa first endpoint with a second endpoint may be achieved using thereal-time model. For example, a segment may be designed based on thecapacity information so that only segments (i.e., the associated networkelements) that are available may be included to form a circuit.

In some implementations of the invention, the capacity information mayinclude capacity information for interconnect points described herein.Thus, in these implementations, capacity information may be availablefor network elements that couple the backbone network to one or moreother networks. In this manner, a real-time model of capacity ofnetworks may be generated.

In some implementations of the invention, database 130 may store thecapacity information. In some implementations of the invention database130 may include capacity information for network elements associatedwith the private backbone network. In some implementations of theinvention, database 130 may include capacity information associated withexternal network providers and/or other network providers.

In some implementations of the invention, database manager 114/networkmanagement server 110 may be communicatively coupled to database 130. Inthese implementations, circuit design manager 112 may communicate withdatabase manager 114 to retrieve the capacity information.

In some implementations of the invention, the capacity information maybe updated. Updates to the capacity information may include, forexample, adding new network elements, deleting existing networkelements, updating a status of network elements, and/or other updatesassociated with network elements. As would be appreciated, the capacityinformation may be updated in substantially real-time, periodically (atintervals), by request, and/or at other times. For example, when acircuit designer selects a network element for a segment during circuitdesign, database 130 may be updated to indicate use of the networkelement so that an inventory of what is available is maintained. Inother words, when a network element has been selected for a particularsegment/circuit, an availability status of the network element may beupdated to designate the network element is unavailable. Thedesignations may include, but not be limited to, “used”, “notavailable,” and/or other designation that indicates the selected networkelement is unavailable for use in another circuit.

Similarly, when one or more network elements is no longer being used,the capacity information may be updated to indicate availability of theone or more network elements. For example, network management server 110may receive an indication that a segment (and/or one or more of itscorresponding network elements) is no longer being used. In thisexample, database 130 may be updated to designate that the segmentand/or associated network elements are now available. By updating thecapacity information to include availability designations, an updatedmodel of network capacity may be achieved so that actual availability ofthe network elements may be ascertained.

In some implementations of the invention, network management server 110may access the capacity information in order to filter network elements.In other words, network management server 110 may determine an inventoryand/or availability of network elements so that only inventoried networkelements within the one or more network elements (as opposed to networkelements with made-up names, for example) and/or available networkelements (such as network elements that are online and/or otherwiseavailable for use) may be selected when designing a particular circuit.In this manner, when a circuit is being designed, the capacityinformation may be used to guide which network elements may be includedin or otherwise be used to form the circuit.

In some implementations of the invention, circuit design manager 112 mayreceive a request associated with designing a circuit. For example, inorder to fulfill a customer request to connect one endpoint with anotherendpoint, a circuit designer may wish to design a circuit that connectsthe endpoints. Accordingly, the circuit designer may make the request.The request may be made through a GUI, an API, and/or other interface.

In some implementations of the invention, in response to the request,circuit design manager 112 may access capacity information associatedwith each of the network elements. In some implementations of theinvention, circuit design manager 112 may access the capacityinformation by communicating with database manager 114. For example,circuit design manager 112 may query or otherwise interrogate database130 via database manager 114, which may communicate with database 130 toretrieve the capacity information. Database manager 114 may provide theretrieved capacity information to circuit design manager 112.

In some implementations of the invention, circuit design manager 112 maydetermine an availability of each network element based on the capacityinformation. In other words, because the capacity information mayinclude whether or not a network element is available, circuit designmanager 112 may determine whether a particular network element isavailable for use in a circuit.

In some implementations of the invention, circuit design manager 112 mayfilter the network elements based on the determined availability of eachof the network elements. In other words, circuit design manager 112 mayallow only the available network elements to be selectable. In someimplementations of the invention, circuit design manager 112 maycommunicate the filtered network elements for selection.

In some implementations of the invention, circuit design manager 112 mayfilter the network elements by omitting the network elements that areunavailable from the network elements. In other words, circuit designmanager 112 may communicate only network elements that are availablewhile omitting network elements that are unavailable so that they maynot be selected by the circuit designer. In some implementations of theinvention, circuit design manager 112 may filter the plurality ofnetwork elements by providing indicia for the unavailable ones of theplurality of network elements, wherein the indicia indicates theunavailable ones of the plurality of network elements are notselectable. In these implementations, circuit design manager 112 maycommunicate the unavailable ones of the plurality of network elementsand the indicia. For example, when presented via a GUI, the unavailableones of the plurality of network elements may be presented to thecircuit designer with indicia (such as being “grayed out” or otherindicia) that indicates the network elements are not selectable.

As would be appreciated, circuit design manager 112 may access thecapacity information, determine the availability, and/or filter thenetwork elements based on an interaction with database 130. For example,the interaction may include a database query that accesses the capacityinformation, determines which network elements are available, andfilters network elements based on the capacity information stored bydatabase 130.

In some implementations of the invention, circuit design manager 112 maycommunicate the filtered plurality of network elements for selection.For example, the filtered plurality of network elements may becommunicated to a circuit designer for selection by the circuitdesigner. In one implementation, circuit design manager 112 maycommunicate the retrieved information via a GUI presented to the circuitdesigner. The GUI may present the one or more the available networkelements (i.e., the filtered plurality of network elements) forselection by the circuit designer.

In one implementation, circuit design manager 112 may receive anindication that at least one of the available network elements isselected by the circuit designer or is otherwise unavailable for use ina circuit (such as when a network element is undergoing an outage orother downtime). Circuit design manager 112 may communicate theindication to database manager 114. Database manager 114 may store theindication in database 130. Database manager 114 may designate theselected network element as unavailable and may store the unavailabledesignation in the database. As such, for any subsequent requests toestablish a network connection between endpoints and/or to viewavailable network elements, the network element(s) marked as unavailablemay not be presented to or otherwise may not be selectable by thecircuit designer. In some implementations of the invention, even thoughthe network element(s) that are designated unavailable may be presentedto the circuit designer, they may be disabled (e.g., grayed out) toindicate that they are not available or otherwise not selectable by thecircuit designer.

In some implementations of the invention, circuit design manager 112 mayreceive an indication that a previously unavailable network element iscurrently available. For example, a circuit designer may indicate that acircuit and its corresponding segments/network elements are no longer inuse. In another example, a system administrator may indicate that apreviously down network element has been repaired and is now availablefor use. In some implementations of the invention, circuit designmanager 112 may cause the capacity information to be updated to indicatethe availability.

In some implementations of the invention, database-level constraints maydefine the network elements (e.g., ports, channels, equipment, etc.). Inother words, database 130, for example, may include a listing of networkelements such that only network elements having one or more records indatabase 130 is included in the capacity model. In this manner, aninventory of network elements may be maintained in the database so thatnetwork elements are catalogued. As such, the user interface presentedto the circuit designer for designing the circuit may includeinformation that is filtered based on the database-level constraints.For example, a listing of the network elements may be presented as adrop-down menu list with no free-form text input for these fields. Aswould be appreciated, the inventory of network elements may be updatedto add, remove, and/or update network elements.

In some implementations of the invention, circuit design manager 112 mayreceive a request for availability reports, for example, parent circuitreports, child circuit reports, equipment reports, and/or other reports.Circuit design manager 112 may generate these reports which may includeinformation regarding the network elements that have been selected forthe designed circuits.

FIG. 2 depicts an exemplary GUI screen 200 generated and/or presented bycircuit design manager 112 for designing of a circuit between a firstendpoint (illustrated in FIG. 2 as “Site A”) and a second endpoint(illustrated in FIG. 2 as “Site Z”) by selection of one or morechannels. The GUI screen illustrated in FIG. 2 and other drawing figuresare non-limiting examples for illustrative purposes only. For example,various objects illustrated in this and other GUI drawing figures may beadded, deleted, resized, reshaped, reconfigured, and/or otherwisealtered, as would be appreciated.

In some implementations of the invention, the one or more channels maybe tracked via the capacity information described herein. In someimplementations of the invention, GUI 200 may include at least twosections, section 210 and section 220. Section 210 may include one ormore fields from which a circuit designer may specify/select for eachsegment. In some implementations of the invention, segment type field210 a may define the type of segment, for example, external segmentassociated with external carrier/provider, private (also referred to as“OnNet”) segment associated with the private backbone network. In someimplementations of the invention, the circuit designer may select thetype of segment from the segment type field 210 a. Infrastructure field210 b may define carrier/backbone servers/equipment being used.

In some implementations of the invention, channel number field 210 c mayprovide a list of available channels that a circuit designer may selectto design to the circuit. The list of available channels may changebased on the segment type/infrastructure selected. For example, the listof channels may be different for an external segment (i.e., networkelements from one or more outside or third party vendors) versus aprivate segment (i.e., network elements from the private backbonenetwork). In some implementations of the invention, unavailable channelsmay not be presented to the circuit designer.

In some implementations of the invention, different channels may havedifferent speeds. A default channelization (i.e., segmentation) for eachspeed may be utilized (for example, an OC12 channel may be channelizedinto 12 STS1 channels or combinations of STS1 and OC3. In someimplementations, a designed circuit may utilize one channel. A differentdesigned circuit may utilize different speeds associated with differentchannels. As such, one or more circuits designed on the facility may notbe required to have the same speed. In some implementations of theinvention, the capacity information may include the different speed foreach channel, thereby enhancing an ability to generate an appropriatecircuit based on the customer request.

In some implementations of the invention, the site A field 210 d andsite Z field 210 g may define the first and second endpoints,respectively, between which the network connection/circuit needs to beestablished (for example, based on the customer request). The site Afield 210 d and site Z field 210 g may, for example, provide a list ofnames associated with a number of sites to choose from. Segmentindicator field 210 e may define some capabilities of the segment. Forexample, an OnNet segment may identify a segment built completely on theCore180 platform/facilities, requiring no additional vendor orders forthat segment. In some implementations, a carrier segment may indicate asegment routed entirely on an external vendor's facility (i.e., externalnetwork carrier's/provider's network), which may be designed usingfunctions described herein. In some implementations, a hub segment mayindicate a segment routed over a prepaid facility provided by anexternal vendor, but utilizing only specific channels on the externalvendor facility (i.e., not the full capacity). Vendor field 210 f maydefine a list of vendors (for example, in the form of vendor names) fromwhich to choose. In some implementations of the invention, when thesegment type is external, the vendor field may indicate a name of thevendor from which the external segment originates.

As illustrated in FIG. 2, the segment indicator and vendor fields havebeen disabled because the segment type selected is “OnNet” or “private”.Once the circuit designer has made the appropriate selections for asegment via the one or more fields, the “add segment” button 210 h maybe executable by circuit designer.

Section 220 may provide a summarized view for each segment. In responseto the “add segment” button execution, circuit design manager 112 maysummarize the selected properties associated with the segment based onthe selections made via one or more fields in section 210 and may addthe segment in section 220. In some implementations of the invention,circuit design manager 112 may provide or otherwise cause to be executeda query including one or more of the selected properties to databasemanager 114. Database manager 114 may query the database 130 to retrieveadditional information associated with the selected segment, forexample, channel termination point information for sites A, Z, (wherechannel termination points represent the end points of a channel withinthe facility) and/or any other intermediate sites, segment begin siteinformation identifying the beginning site for a segment, segment endsite information identifying the ending site for a segment, actions thatmay be performed (e.g., attach to email, upload, download, export,delete, etc.), and/or other information associated with the selectedsegment. In other words, database 130 may store this additionalinformation associated with one or more segments that may be selectedfor circuit design. Database manager 114 may provide the additionalinformation to circuit design manager 112. Circuit design manager 112may gather the information associated with the selected properties insection 210 with the additional information received from databasemanager 114 to provide the summarized view for each segment.

As illustrated in FIG. 2, section 220 may provide, among otherinformation, for each segment, segment type information,facility/circuit identifier information, carrier information (e.g.,external carrier vs. private backbone network, carrier name, etc.),channel termination point (CTP) information, segment begin site and endsite information, action information, and/or other information.

In some implementations of the invention, once all the segments for acircuit have been selected, the complete design button 220 a may beexecuted by circuit designer. Once the complete design button has beenexecuted, a circuit layout diagram may be generated. An exemplarycircuit layout diagram is depicted in FIG. 4.

FIG. 3 depicts an exemplary GUI screen 300 generated and/or presented bycircuit design manager 112 for specification of one or more networkelements when designing a circuit coupling Site A and Site Z. GUI 300may include one or more fields from which a circuit designer mayspecify/select. The circuit designer may select a shelf, card, port,and/or channel termination point for designing the circuit. InfraCarrier field 310 a may define the name of the carrier. Infra Ckt IDfield 310 b may provide a circuit identifier for the circuit associatedwith the carrier. The circuit identifier may be an automaticallygenerated unique name for the circuit. In some implementations, thecircuit designer may select the circuit to be used based on the Ckt IDfield, which may be further filtered by selection of Site A, Site Z,channel speed, and/or parameters. Channel Termination A field 310 c maydefine the channel termination point at Site A. Fields 310 d, 310 e, 310f, 310 g may indicate selection for shelf, card, port, and channeltermination point for Site A. Only available shelf, card, port, andchannel termination point information may be provided to circuitdesigner for selection purposes. Infra Carrier Ckt ID field 310 h mayspecify—the carrier's own name for a circuit provided by the carrier.Infra Channel field 310 i may specify a list of channels from which thecircuit designer may select an appropriate channel, which may be definedby a channel with the appropriate speed for that circuit design.

FIG. 4 illustrates an exemplary circuit layout diagram 400, according tovarious aspects of the invention. Circuit layout diagram 400 illustratesa circuit that couples a first endpoint (“Site A”) with a secondendpoint (“Site Z”). The circuit couples Site A and Site Z via a firstsegment (illustrated in FIG. 4 as “External (Segment 1)”) and a secondsegment (illustrated in FIG. 5 as “ONNET Segment 2”). Segment 1 couplesSite A with an “Intermediate Site” and Segment 2 couples theIntermediate Site with Site Z. Thus, the circuit illustrated by circuitlayout diagram 400 includes Segment 1, Segment 2, and the IntermediateSite. Segment 1 illustrates an external segment. In other words, theexternal segment may be provided for by a third party vendor of networkservices/infrastructure. Segment 2 illustrates an internal segment partof the private backbone network, for example. Thus, circuit layoutdiagram 400 illustrates a circuit using network elements from both anexternal network provider and a private network backbone describedherein. As would be appreciated, circuit layout diagram 400 is exemplaryonly; any number and type (external or private) of segments may be usedto couple Site A (or other site) with Site Z (or other site).

FIG. 5 is a flowchart 500 depicting example operations performed by anetwork management system 100, according to various aspects of theinvention. In some implementations of the invention, the exampleoperations may be performed by one or more components/modules of thenetwork management system 100. In some implementations of the invention,various operations may be performed in different sequences. In otherimplementations, additional operations may be performed along with someor all of the operations shown in FIG. 5. In yet other implementations,one or more operations may be performed simultaneously. In yet otherimplementations, one or more operations may not be performed.Accordingly, the operations described are exemplary in nature and, assuch, should not be viewed as limiting.

In operation 510, a request associated with designing a circuit may bereceived, by circuit design manager 112, for example. In operation 512,capacity information associated with each of a plurality of networkelements may be accessed, by circuit design manager 112, for example. Insome implementations, circuit design manager 112 may access capacityinformation in response to the customer request. In some implementationsof the invention, circuit design manager 112 may access the capacityinformation by communicating with database manager 114. For example,circuit design manager 112 may query or otherwise interrogate database130 via database manager 114, which may communicate with database 130 toretrieve the capacity information. Database manager 114 may provide theretrieved capacity information to circuit design manager 112.

In operation 514, an availability of each network element based on thecapacity information may be determined, by circuit design manager 112,for example. In other words, because the capacity information mayinclude whether or not a network element is available, circuit designmanager 112 may determine whether a particular network element isavailable for use in a circuit.

In operation 516, the plurality of network elements may be filteredbased on the determined availability of each of the network elements, bycircuit design manager 112, for example. In other words, circuit designmanager 112 may allow only the available network elements to beselectable for inclusion in the circuit and may not allow unavailablenetwork elements to be selectable. In operation 518, the filterednetwork elements may be communicated for selection, by circuit designmanager 112, for example.

In some implementations of the invention, circuit design manager 112 mayfilter the network elements by omitting the network elements that areunavailable from the network elements. In other words, circuit designmanager 112 may communicate only network elements that are availablewhile omitting network elements that are unavailable so that they maynot be selected by the circuit designer. In some implementations of theinvention, circuit design manager 112 may filter the plurality ofnetwork elements by providing indicia for the unavailable ones of theplurality of network elements, wherein the indicia indicates theunavailable ones of the plurality of network elements are notselectable. In these implementations, circuit design manager 112 maycommunicate the unavailable ones of the plurality of network elementsand the indicia. For example, when presented via a GUI, the unavailableones of the plurality of network elements may be presented to thecircuit designer with indicia (such as being “grayed out” or otherindicia) that indicates the network elements are not selectable.

As would be appreciated, circuit design manager 112 may access thecapacity information, determine the availability, and/or filter thenetwork elements based on an interaction with database 130. For example,the interaction may include a database query that accesses the capacityinformation, determines which network elements are available, andfilters network elements based on the capacity information stored bydatabase 130.

In some implementations of the invention, circuit design manager 112 maycommunicate the filtered plurality of network elements for selection.For example, the filtered plurality of network elements may becommunicated to a circuit designer for selection by the circuitdesigner. In one implementation, circuit design manager 112 maycommunicate the retrieved information via a GUI presented to the circuitdesigner. The GUI may present the one or more the available networkelements (i.e., the filtered plurality of network elements) forselection by the circuit designer.

In some implementations of the invention, network elements may beassociated with one another such that selection of one network elementof a first segment will automatically (e.g., by circuit design manager112) cause selection of a second segment. For example, some customertrunks have been split into two separate facilities. Whenever one ofthose customer trunks is used in the design of a circuit, the othercustomer trunk may also be required. As such, when a channel from one ofthese customer trunks is added as a segment to a circuit, a secondsegment that uses a channel from the other customer trunk may beautomatically be added to the circuit design. In this manner, when afirst network element is associated with a second network element,selection of the first network element causes automatic selection of thesecond network element and vice versa.

In some implementations of the invention, a facility may be designedusing Open Channelization, where the designed circuit may itselfidentify the requirement for channelization. Open channelization, asopposed to fixed channelization, does not require predefinition of thechannel structure of a facility. With open channelization, channel speedmay be determined and set at design time. This is unlike fixedchannelization where the designer may select a predefined channel withan appropriate speed. For example, if a designer is designing a DS3circuit using fixed channelization, the designer may select a predefinedSTS1 channel in an OCx facility. However, with open channelization, thechannel structure of the OCx facility may not be predetermined and thedesigner may create an STS1 channel at design time, thereby saving adesign step.

Implementations of the invention may be made in hardware, firmware,software, or various combinations thereof. The invention may also beimplemented as computer-readable instructions stored on a tangiblecomputer-readable storage medium which may be read and executed by oneor more processors. A computer-readable storage medium may includevarious mechanisms for storing information in a form readable by acomputing device. For example, a tangible computer-readable storagemedium may include optical storage media, flash memory devices, and/orother storage mediums. Further, firmware, software, routines, orinstructions may be described in the above disclosure in terms ofspecific exemplary aspects and implementations of the invention andperforming certain actions. However, it will be apparent that suchdescriptions are merely for convenience, and that such actions may infact result from computing devices, processors, controllers, or otherdevices executing firmware, software, routines or instructions.

Other embodiments, uses and advantages of the invention will be apparentto those skilled in the art from consideration of the specification andpractice of the invention disclosed herein. The specification should beconsidered exemplary only, and the scope of the invention is accordinglyintended to be limited only by the following claims.

What is claimed is:
 1. A computer-implemented method for capacitymanagement of at least one computer network having a plurality ofnetwork elements that include at least one of a channel, port, card,panel and a channel termination point, the method being executed by atleast one processor configured to perform a plurality of operations, themethod comprising: receiving a request, via a user interface, to form acircuit that couples a first endpoint and a second endpoint at differentlocations within the at least one computer network; accessing a databasefor capacity information associated with each of the plurality ofnetwork elements; determining an availability of each of the pluralityof network elements based on the capacity information; filtering theplurality of network elements based on the determined availability, andproviding indicia for the unavailable ones of the plurality of networkelements, wherein the indicia indicates that the unavailable ones of theplurality of network elements are not selectable for inclusion in thecircuit; communicating the filtered plurality of network elements,including the unavailable ones of the plurality of network elements andthe indicia, via the user interface for specifying selectable networkelements of the plurality of network elements for the circuit; receivinga first indication at the user interface that a first network element isunavailable; updating the capacity information to indicate that thefirst network element is unavailable for selection based on the firstindication; receiving a second indication, subsequent to the firstindication, that the first network element is available; and updatingthe capacity information to indicate that the first network element isavailable for selection based on the second indication.
 2. Thecomputer-implemented method of claim 1, wherein the indication indicatesthat the first network element has been selected for use in the circuit,thereby causing the first network element to be unavailable.
 3. Thecomputer-implemented method of claim 1, wherein the plurality of networkelements form part of an interconnect point that couples a backbonenetwork of a first network provider with at least one other network of asecond network provider different from the first network provider.
 4. Anon-transitory tangible computer-readable storage medium havingcomputer-readable instructions thereon for capacity management of atleast one computer network including a plurality of network elementsthat include at least one of a channel, port, card, panel and a channeltermination point, the instructions being executed by at least oneprocessor to: receive a request, via a user interface, to form a circuitthat couples a first endpoint and a second endpoint at differentlocations within the at least one computer network; access a databasefor capacity information associated with each of the plurality ofnetwork elements; determine an availability of each of the plurality ofnetwork elements based on the capacity information; filter the pluralityof network elements based on the determined availability, and provideindicia for the unavailable ones of the plurality of network elements,wherein the indicia indicates that the unavailable ones of the pluralityof network elements are not selectable for inclusion in the circuit;communicate the filtered plurality of network elements, including theunavailable ones of the plurality of network elements and the indicia,via the user interface for specifying selectable network elements of theplurality of network elements for the circuit; receive a firstindication at the user interface that a first network element isunavailable; update the capacity information to indicate that the firstnetwork element is unavailable for selection based on the firstindication; receive a second indication, subsequent to the firstindication, that the first network element is available; and update thecapacity information to indicate that the first network element isavailable for selection based on the second indication.
 5. Acomputer-implemented system for capacity management of at least onecomputer network including a plurality of network elements that includeat least one of a channel, port, card, panel and a channel terminationpoint, the system comprising: at least one processor configured toreceive a request, via a user interface, to form a circuit that couplesa first endpoint and a second endpoint at different locations within theat least one computer network, access a database for capacityinformation associated with each of the plurality of network elements,determine an availability of each of the plurality of network elementsbased on the capacity information, filter the plurality of networkelements based on the determined availability, and provide indicia forthe unavailable ones of the plurality of network elements, wherein theindicia indicates that the unavailable ones of the plurality of networkelements are not selectable for inclusion in the circuit, andcommunicate the filtered plurality of network elements, including theunavailable ones of the plurality of network elements and the indicia,via the user interface for specifying selectable network elements of theplurality of network elements for the circuit, receive a firstindication at the user interface that a first network element isunavailable, update the capacity information to indicate that the firstnetwork element is unavailable for selection based on the firstindication, receive a second indication, subsequent to the firstindication, that the first network element is available, and update thecapacity information to indicate that the first network element isavailable for selection based on the second indication.